iT邦幫忙

2025 iThome 鐵人賽

DAY 3
0
自我挑戰組

我獨自開發 - Supabase 打造全端應用系列 第 3

第三關 - Supabase 官方文件導覽

  • 分享至 

  • xImage
  •  

官網文件導覽列

今天要介紹的是 Supabase 的官方文件中導覽列,摘要整個網站的文件,將幫助你快速了解 Supabase 的各項功能,後續文章將介紹使用方式。

官網文件導覽列 (由左至右):

1. Start 快速開始

使用框架快速啟動:幫助開發者快速建立初始環境,支援多種主流框架,接下來文章會有詳細說明。

教學範例:實際應用示範,也包含多種主流框架,接下來文章會示範幾個主要功能。

資料庫

  • Postgres 資料庫:每個專案都擁有完整的 Postgres 資料庫。
  • 自動生成 REST API:透過 PostgREST,無需寫程式碼即可自動產生 RESTful API。
  • 自動生成 GraphQL API:使用 pg_graphql 擴充套件快速生成 GraphQL API。
  • 資料庫 Webhooks:資料變更時可觸發外部服務。
  • 加密管理:使用 Supabase Vault 進行資料加密與存放。

資料庫功能

平台管理

  • 資料庫備份:每日自動備份,支援時間點還原(PITR)。
  • 自訂網域:給網站一個專屬的名字。
  • 網路限制:限制可連接資料庫的 IP 範圍。
  • SSL 強制:強制使用 SSL 連線。
  • 分支測試:支援 Branching 功能測試與預覽變更。
  • 讀取副本:多區域部署讀取副本,降低延遲。
  • 日誌匯出:支援匯出日誌到第三方。

平台管理功能

即時功能

  • Postgres 變更即時推送:透過 WebSocket 接收資料庫變更。
  • 廣播訊息:用戶間即時訊息傳遞。
  • Presence 功能:同步用戶狀態(如線上狀態、輸入指示)。

即時功能

身份驗證

  • 支援電子郵件、社交登入、手機登入、無密碼登入。
  • 透過 Row Level Security 控制資料存取權限。
  • CAPTCHA 保護登入、註冊及密碼重設表單。
  • 支援伺服器端驗證整合。

身份驗證功能

檔案儲存

  • 各種檔案儲存與管理。
  • 內容分發網路(CDN)加速大檔案傳輸。
  • 即時圖片轉換,能根據需求即時調整圖片大小、格式或品質。
  • S3 相容介面,方便整合與管理檔案。

邊緣函數

  • TypeScript 函式自訂和使用各種商業邏輯。
  • 支援區域性呼叫與 NPM 模組。

專案管理與開發工具

  • CLI 工具支援本地開發與部署。
  • 透過帶有授權的存取權杖管理 API 可程式化管理專案配置。
  • 函式庫支援 JavaScript、Flutter、Swift 等。

功能成熟度

  • 功能分為 Private Alpha、Public Alpha、Beta 與正式釋出(GA)階段。
  • 大部分核心功能如資料庫、Auth、Storage、Realtime 等已達 GA,穩定可用。

核心架構

KONG API Gateway:處理所有進入的 API 請求,提供認證、速率限制等功能。

Supabase 架構圖

2.Products 產品功能

Supabase 的核心產品:

  • Database:PostgreSQL 資料庫服務
  • Auth:身份驗證系統
  • Storage:檔案儲存服務
  • Edge Functions:邊緣函數功能
  • Realtime:即時資料同步

3. Build 建構應用

提供開發相關的資源:

  • Local Development:使用 Supabase CLI 和 Docker,在自己的電腦上快速且離線地開發和測試專案。
  • Deployment:Supabase 支援多環境管理,並可透過 GitHub 整合或 CLI 自動化將專案部署到線上。
  • Self-Hosting:可以在自己的伺服器或雲端使用 Docker、Kubernetes 等工具自行架設 Supabase 服務。
  • Integrations:Supabase 提供多種工具和社群支援,方便與其他平台和服務整合使用(如 GitHub )。

4.Manage 管理平台

平台管理與運維功能:

  • Platform Management:提供工具讓你方便管理和設定整個 Supabase 平台專案。
  • Security & Compliance:確保資料和系統安全,並符合相關法規標準。
  • Telemetry:收集和分析系統運作數據,幫助優化服務表現。
  • Troubleshooting:提供診斷和解決問題的方法,讓系統更穩定可靠。

5. Reference 參考資料

技術文件與參考:

  • JavaScript 客戶端函式庫:為 JavaScript 開發者提供操作 Supabase 的便利工具與 API。
  • CLI 指令:命令列工具,協助開發者快速管理與操作 Supabase 專案。
  • Management API:可程式化管理 Supabase 專案與資源的 API。
  • REST API:自動生成的 RESTful API,方便操作資料庫資料。
  • GraphQL API:靈活查詢的 GraphQL API,讓前端更有效率取得資料。

6. Resources 資源中心

社群與學習資源:

  • Glossary(術語表):提供 Supabase 相關專有名詞和概念的解釋。
  • Changelog(更新日誌):記錄 Supabase 平台和功能的最新變更與版本更新。
  • Status(系統狀態):即時顯示 Supabase 服務的運作狀態與可用性。
  • Contributing(貢獻指南):說明如何參與 Supabase 社群貢獻與開發流程。

小結

Supabase 提供了一個完整且易於使用的後端解決方案,特別適合需要快速開發但不想犧牲靈活性的團隊。透過其清晰的架構設計和豐富的文件資源,開發者可以輕鬆地將各種後端功能整合到應用程式中。

... to be continued

有任何想討論歡迎留言,或需要指正的地方請鞭大力一點,歡迎訂閱、按讚加分享,分享給想要提升開發效率或探索新技術可能性的朋友!


上一篇
第二關 - Supabase 從零基礎到專業開發者
下一篇
第四關 - Supabase CLI(上)- 安裝、設定、指令
系列文
我獨自開發 - Supabase 打造全端應用5
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言